package cn.edu.wynu.define;

public class MethodProblemDemo03 {
    public static void printhai(){
        for (int i = 1; i <= 5; i++) {
            System.out.println("hai");
        }
    }
    public static void main(String[] args) {
        // 理解掌握使用方法的几个常见问题
//        1.方法在类中的位置放前放后无所谓，但一个方法不能定义在另一个方法里面。
        printhai();
        // 如果放在main方法里面，就会报错
        /*public static void printhai(){
            for (int i = 1; i <= 5; i++) {
                System.out.println("hai");
            }
        }*/

//        2.方法的返回值类型写void(无返回申明)时，方法内不能使用return返回数据，如果方法的返回值类型写了具体类型，方法内部则必须使用return返回对应类型的数据。
        /*public static void printhai(){
            for (int i = 1; i <= 5; i++) {
                System.out.println("hai");
            }
            return 2; // 报错
        }*/

//        3.return语句的下面，不能编写代码，属于无效的代码，执行不到这儿。
        /*public static int sum(int a,int b){
            int c = a + b;
            return c;
            System.out.println(2); // 报错，return语句的下面，不能编写代码，属于无效的代码，执行不到这儿
        }*/

//        4.方法不调用就不会执行，调用方法时，传给方法的数据，必须严格匹配方法的参数情况。
        int rs = sum(1,2);
        System.out.println(rs);

//        5.调用有返回值的方法，有3种方式:1、可以定义变量接收结果 2、或者直接输出调用，3、甚至直接调用;
        // 方法一：定义变量接收结果
        int rs1 = sum(10,20);
        System.out.println(rs1);
        // 方法二：直接输出调用
        System.out.println(sum(3,4));
        // 方法三：直接调用
        sum(11,22);

//        6.调用无返回值的方法，只有1种方式:1、只能直接调用
        printhai();
    }
    public static int sum(int a,int b){
        int c = a + b;
        return c;
    }
}
